Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## java.security.cert
Class CertStoreSpi

    java.lang.Object
      |
      +--java.security.cert.CertStoreSpi

public abstract class CertStoreSpi
extends Object

The Service Provider Interface (SPI) for the `CertStore` class. All `CertStore` implementations must include a class (the SPI class) that extends this class (`CertStoreSpi`), provides a constructor with a single argument of type `CertStoreParameters`, and implements all of its methods. In general, instances of this class should only be accessed through the `CertStore` class. For details, see the Java Cryptography Architecture.

Concurrent Access

The public methods of all `CertStoreSpi` objects must be thread-safe. That is, multiple threads may concurrently invoke these methods on a single `CertStoreSpi` object (or more than one) with no ill effects. This allows a `CertPathBuilder` to search for a CRL while simultaneously searching for further certificates, for instance.

Simple `CertStoreSpi` implementations will probably ensure thread safety by adding a `synchronized` keyword to their `engineGetCertificates` and `engineGetCRLs` methods. More sophisticated ones may allow truly concurrent access.

Since:
  1.4

Constructor Summary
`CertStoreSpi(CertStoreParameters params)` The sole constructor.

Method Summary
`abstract Collection` | `engineGetCertificates(CertSelector selector)` Returns a `Collection` of `Certificate`s that match the specified selector.
`abstract Collection` | `engineGetCRLs(CRLSelector selector)` Returns a `Collection` of `CRL`s that match the specified selector.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### CertStoreSpi

    public CertStoreSpi(CertStoreParameters params)
                 throws InvalidAlgorithmParameterException

  The sole constructor.

Parameters:
  `params` - the initialization parameters (may be `null`)
Throws:
  `InvalidAlgorithmParameterException` - if the initialization parameters are inappropriate for this `CertStoreSpi`

Method Detail

### engineGetCertificates

    public abstract Collection engineGetCertificates(CertSelector selector)
                                              throws CertStoreException

  Returns a `Collection` of `Certificate`s that match the specified selector. If no `Certificate`s match the selector, an empty `Collection` will be returned.

  For some `CertStore` types, the resulting `Collection` may not contain all of the `Certificate`s that match the selector. For instance, an LDAP `CertStore` may not search all entries in the directory. Instead, it may just search entries that are likely to contain the `Certificate`s it is looking for.

  Some `CertStore` implementations (especially LDAP `CertStore`s) may throw a `CertStoreException` unless a non-null `CertSelector` is provided that includes specific criteria that can be used to find the certificates. Issuer and/or subject names are especially useful criteria.

  Parameters:
    `selector` - A `CertSelector` used to select which `Certificate`s should be returned. Specify `null` to return all `Certificate`s (if supported).
  Returns:
    A `Collection` of `Certificate`s that match the specified selector (never `null`)
  Throws:
    `CertStoreException` - if an exception occurs

### engineGetCRLs

    public abstract Collection engineGetCRLs(CRLSelector selector)
                                      throws CertStoreException

  Returns a `Collection` of `CRL`s that match the specified selector. If no `CRL`s match the selector, an empty `Collection` will be returned.

  For some `CertStore` types, the resulting `Collection` may not contain all of the `CRL`s that match the selector. For instance, an LDAP `CertStore` may not search all entries in the directory. Instead, it may just search entries that are likely to contain the `CRL`s it is looking for.

  Some `CertStore` implementations (especially LDAP `CertStore`s) may throw a `CertStoreException` unless a non-null `CRLSelector` is provided that includes specific criteria that can be used to find the CRLs. Issuer names and/or the certificate to be checked are especially useful.

  Parameters:
    `selector` - A `CRLSelector` used to select which `CRL`s should be returned. Specify `null` to return all `CRL`s (if supported).
  Returns:
    A `Collection` of `CRL`s that match the specified selector (never `null`)
  Throws:
    `CertStoreException` - if an exception occurs

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.